package com.shrcl.engineerprocess.domain;

import com.shrcl.engineerprocess.domain.Notification;
import com.shrcl.engineerprocess.domain.impl.TaskNotificationImpl;
import com.shrcl.engineerprocess.domain.proxy.TaskNotificationProxy;
import edu.fudan.langlab.domain.task.TSKTask;
import edu.fudan.mylang.pf.EntityImplementation;

@EntityImplementation(implementBy = TaskNotificationImpl.class)
public interface TaskNotification extends Notification {
  public abstract String getTitle();
  
  public abstract TaskNotification setTitle(final String title);
  
  public abstract String getBody();
  
  public abstract TaskNotification setBody(final String body);
  
  public abstract TSKTask getTskTask();
  
  public abstract TaskNotification setTskTask(final TSKTask tskTask);
  
  public abstract void doNotify();
  
  public abstract void init();
  
  public abstract TaskNotificationProxy toProxy();
}
